Usually, in today's telecommunication networks, of which Internet is the most popular, data packets sent from a network entity to another have a source and a destination IP-address, which in version four of the IP-protocol is 4 bytes long. However, hardware network interfaces in these network entities do not understand the IP-address format, since they operate only with hardware addresses. Thus, there is a necessity to find the hardware address of the network entity to which another network entity is sending one or more data packets.
Since the most frequently used type of hardware network interface is an Ethernet interface, these hardware addresses most often are MAC (Media Access Control Addresses) using a 6 byte address format. A MAC address is usually assigned to the device after it is manufactured.
Now, for example on the Internet, the way to obtain the MAC address of a hardware entity to which a packet is to be sent or forwarded can be obtained by sending a so called ARP (Address Resolution Protocol) packet. The ARP packet has the IP-address of the hardware entity of interest as the destination address and is asking for the MAC address of that same hardware entity. As an answer, an ARP-packet containing the MAC-address of the hardware entity is returned to the sender.
One other way sometimes used by Ethernet bridges is flooding. Thus, in case an, Ethernet bridge or some other network node capable of handling Ethernet frames receives a data packet, it will forward the Ethernet frame on all its ports except the incoming port. From all the entities in the network listening to the Ethernet frame, the one having the MAC destination address of the Ethernet frame as its hardware address will receive the Ethernet frame. All other network entities will discard the Ethernet frame.
In case a router receives a data packet with a destination IP-address where the MAC-address of the destination is unknown, it may transmit an ARP packet to that destination IP-address. The ARP-packet is transmitted on the router port associated with the subnet on which the destination IP-address is defined. Then, the entity having the IP-address in the ARP request as its destination address will answer with a data packet comprising its MAC address and the router may forward the data packet to that entity.
It may be mentioned that other types of Layer 2—protocols (the protocol layer below the IP-layer) beside the Ethernet protocol are known and used. Examples of such Layer 2—protocols are ATM (Asynchronous Transfer Mode), FDDI, Token ring and other types of network structures.
In an ATM network, for example, which is a sort of hybrid between a packet-switched and a circuit switched network, data packets are sent in the form of virtual cells, while a more or less permanent path is established for these virtual cells between a transmitter and a receiver. This path is called a VC (Virtual Circuit) in ATM terminology.
In such and similar networks, where a user may use one or more services offered by the network at the same time, these services are often delivered via multiple logical access channels. The advantage of using logical channels is a complete separation of the different services.
In this respect, the mapping of upstream end-user traffic to the appropriate logical channel may be based on different principles, such as the destination MAC address. In this case, the device (CPE—Customer Premises Equipment) performing the upstream mapping may be a learning Ethernet bridge. Upstream traffic towards a MAC address that is not known (learned) by the bridge is flooded on all logical channels.
Logical channels may for example be ATM PVCs (Permanent Virtual Circuits) used for ADSL access or IEEE802.1Q VLANs (Virtual Local Area Networks) used among others for VDSL (Very high-speed Digital Subscriber Line) or native Ethernet access.
RFC3768 specifies a protocol called VRRP (Virtual Router Redundancy Protocol). It is a protocol that allows two (or more) routers to operate in a redundancy scheme, where one router always acts as a master, while the other router or routers act as backup router. In case of failure of the master, one of the backup routers takes over and acts as a master. Thus outwardly, the two or more routers appear as one virtual router. In the remaining part of the description the term virtual router will refer to a group of two or more routers, where one of the routers is the owner of one or more virtual router IP-addresses. Thus all packet data traffic directed towards this virtual router address will be handled by the owner of the virtual router address. A VRRP-router is defined here as one individual router operating according to the VRRP protocol.
Now the routers in such a situation are configured with a common virtual router MAC address which is used as “Sender MAC Address” in the payload of ARP replies sent from the virtual router towards ARP-requesting hosts. RFC826 contains a detailed description of the Address Resolution Protocol.
However, routers use in general another and individual MAC address as Ethernet frame source address, both for the ARP-reply and for all other downstream traffic.
Thus, when an Ethernet frame is sent from one of the VRRP routers to a destination via, for example, an Ethernet bridge, the Ethernet frame will contain the individual MAC address of one of the VRRP routers in the header. However, an ARP response message sent to a terminal will contain the virtual router MAC address in the payload of the Ethernet frame.
This means that the learning bridge CPE will learn the individual VRRP router MAC addresses, but never the virtual router MAC address. However, the end-user host who issued an ARP request will use the virtual router MAC address as the destination address for upstream traffic, because it was told to via the ARP reply. The result is that the Ethernet bridge receiving the Ethernet frame having the virtual router MAC address as the destination address from the end-user host upstream will always flood the frame on all logical channels, which wastes bandwidth in the local loop and in the aggregation network, and also unnecessarily occupies MAC tables in aggregation network switches.
The object of the present invention is to offer a solution to at least some of the problems associated with known technology.